package com.uw.uwconfig.client.repository;

import com.uw.uwconfig.client.config.ConfigServerMeta;
import org.springframework.context.ApplicationContext;
import org.springframework.core.env.Environment;

import java.util.Map;

public interface UwRepository extends UwRepositoryChangeListener {
    static UwRepository getDefault(Environment environment, ApplicationContext applicationContext) {
        return new UwRepositoryImpl(environment, applicationContext);
    }

    Map<String, Object> getConfig(ConfigServerMeta meta);

    Map<String, Object> getConfigWithoutCache(ConfigServerMeta meta);

    Long version(ConfigServerMeta meta);
}
